/* 
 * File:   CacheProductos.cpp
 * Author: jesus
 * 
 * Created on 10 de junio de 2010, 19:29
 */

#include "CacheProductos.h"


void CacheProductos::aniadirProducto(Producto &p){

    ProductoCache *pc;
    pc=new ProductoCache(p);
    pair<map<int,ProductoCache *>::iterator,bool> ret;

    ret=productosPorCodigo.insert(pair<int,ProductoCache *>(p.retCodigo(),pc));
    if(ret.second==false) throw ErrorDatoRepetido();

/*
    if(productosPorFecha.size()<1000)
        productosPorFecha.push(*pc);
    else{
        productosPorFecha.pop();
        productosPorFecha.push(pc);
    }*/
}
Producto * CacheProductos::buscarProducto(int codigo){

    map<int,ProductoCache *>::iterator it;
    map<int,ProductoCache>::iterator ita;

    Producto *retProd;
    it=productosPorCodigo.find(codigo);

    if(it==productosPorCodigo.end()) throw ErrorNoEncontrado();
    /*
    (it)->second();
    ita->second();*/
    return  retProd;
}
void CacheProductos::vaciar(){

}

